← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Wed Dec 14 15:33:55 2022
Reported on Wed Dec 14 15:40:04 2022

Filename(eval 325)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 8944 statements in 10.5ms
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
2231227.61ms7.61msJSON::Schema::Modern::::_assert__format_validations JSON::Schema::Modern::_assert__format_validations
11118µs46µsJSON::Schema::Modern::::BEGIN@7.182 JSON::Schema::Modern::BEGIN@7.182
1116µs6µsMethod::Generate::Accessor::_Generated::::BEGIN@12.183Method::Generate::Accessor::_Generated::BEGIN@12.183
1114µs16µsMethod::Generate::Accessor::_Generated::::BEGIN@24.184Method::Generate::Accessor::_Generated::BEGIN@24.184
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
223µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
310s my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
410s my $isa_check_for__5fformat_5fvalidations = ${$_[1]->{"\$isa_check_for__5fformat_5fvalidations"}};
510s my $default_for__5fformat_5fvalidations = ${$_[1]->{"\$default_for__5fformat_5fvalidations"}};
6 package JSON::Schema::Modern;
7263µs274µs
# spent 46µs (18+28) within JSON::Schema::Modern::BEGIN@7.182 which was called: # once (18µs+28µs) by Sub::Quote::_clean_eval at line 7
no warnings 'closure';
# spent 46µs making 1 call to JSON::Schema::Modern::BEGIN@7.182 # spent 28µs making 1 call to warnings::unimport
8
# spent 7.61ms (7.61+1µs) within JSON::Schema::Modern::_assert__format_validations which was called 2231 times, avg 3µs/call: # 2230 times (7.60ms+0s) by JSON::Schema::Modern::_get_format_validation at line 17 of (eval 324)[Sub/Quote.pm:3], avg 3µs/call # once (10µs+1000ns) by JSON::Schema::Modern::add_format_validation at line 17 of (eval 323)[Sub/Quote.pm:3]
sub _assert__format_validations {
9 ($_QUOTED,$_UNQUOTED) if 0;
10# BEGIN quote_sub PRELUDE
11package Method::Generate::Accessor::_Generated;
12
# spent 6µs within Method::Generate::Accessor::_Generated::BEGIN@12.183 which was called: # once (6µs+0s) by Sub::Quote::_clean_eval at line 17
BEGIN {
1311µs $^H = 2018;
1411µs ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
1514µs %^H = (
16 );
17142µs16µs}
18# END quote_sub PRELUDE
1922315.60msdo {
20 my $val = exists $_[0]->{"_format_validations"} ?
21$_[0]->{"_format_validations"}
2222312.63ms: do {
2312µs11µs my $value = $default_for__5fformat_5fvalidations->($_[0]);
246621µs228µs
# spent 16µs (4+12) within Method::Generate::Accessor::_Generated::BEGIN@24.184 which was called: # once (4µs+12µs) by Sub::Quote::_clean_eval at line 24
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($value)) and (not grep {my $v = ($value)->{$_};not((/\A(?:date\-time|date|time|duration|email|idn\-email|hostname|idn\-hostname|ipv4|ipv6|uri|uri\-reference|iri|iri\-reference|uuid|uri\-template|json\-pointer|relative\-json\-pointer|regex)\z/) or (((!!1)) and (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($v)) and not(grep !/\A(?:type|sub)\z/, keys %{$v}) and exists($v->{"type"}) and (defined($v->{"type"}) and !ref($v->{"type"}) and $v->{"type"} =~ m{\A(?:(?:array|boolean|integer|nu(?:ll|mber)|object|string))\z}) and exists($v->{"sub"}) and do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($v->{"sub"}) } })))} keys %{$value}) and (!exists $value->{"date-time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date-time"}) })) and (!exists $value->{"date"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date"}) })) and (!exists $value->{"time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"time"}) })) and (!exists $value->{"duration"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"duration"}) })) and (!exists $value->{"email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"email"}) })) and (!exists $value->{"idn-email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-email"}) })) and (!exists $value->{"hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"hostname"}) })) and (!exists $value->{"idn-hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-hostname"}) })) and (!exists $value->{"ipv4"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv4"}) })) and (!exists $value->{"ipv6"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv6"}) })) and (!exists $value->{"uri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri"}) })) and (!exists $value->{"uri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-reference"}) })) and (!exists $value->{"iri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri"}) })) and (!exists $value->{"iri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri-reference"}) })) and (!exists $value->{"uuid"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uuid"}) })) and (!exists $value->{"uri-template"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-template"}) })) and (!exists $value->{"json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"json-pointer"}) })) and (!exists $value->{"relative-json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"relative-json-pointer"}) })) and (!exists $value->{"regex"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"regex"}) })) }) or Type::Tiny::_failed_check($isa_check_for__5fformat_5fvalidations, "Dict[date=>Optional[CodeRef],date-time=>Optional[CodeRef],duration=>Optional[CodeRef],email=>Optional[CodeRef],hostname=>Optional[CodeRef],idn-email=>Optional[CodeRef],idn-hostname=>Optional[CodeRef],ipv4=>Optional[CodeRef],ipv6=>Optional[CodeRef],iri=>Optional[CodeRef],iri-reference=>Optional[CodeRef],json-pointer=>Optional[CodeRef],regex=>Optional[CodeRef],relative-json-pointer=>Optional[CodeRef],time=>Optional[CodeRef],uri=>Optional[CodeRef],uri-reference=>Optional[CodeRef],uri-template=>Optional[CodeRef],uuid=>Optional[CodeRef],Slurpy[HashRef[Dict[sub=>CodeRef,type=>Enum[\"null\",\"object\",\"array\",\"boolean\",\"string\",\"number\",\"integer\"]]]]]", $value, "attribute_name","_format_validations","attribute_step","isa check","mgaca","0","varname","\$self->{\"_format_validations\"}"); $value };
# spent 16µs making 1 call to Method::Generate::Accessor::_Generated::BEGIN@24.184 # spent 12µs making 1 call to warnings::unimport
2511µs $_[0]->{"_format_validations"} = $value
26 }
27;
2822311.06ms exists $_[0]->{"_format_validations"}
29 or Carp::croak(q{Attempted to access '}."_format_validations".q{' but it is not set});
302231442µs $val;
31}
32 }
3311µs $$_UNQUOTED = \&_assert__format_validations;
34}
3516µs1;
36
37;